# -*- coding: utf-8 -*-
"""
@Time ：2021/3/30 21:39 
@Auth ： Mr. William 1052949192
@Company ：特斯汀学院 @testingedu.com.cn
@Function ：运行入口
"""
from common.excel.Excel import get_reader, get_writer
from keywords.webkeys import Web


class Conf:
    """读取excel数据，做成参数化"""

    def __init__(self, case_path='./lib/电商项目用例.xlsx', result_path='./lib/result-电商项目用例.xlsx'):
        self.reader = get_reader(case_path)
        self.writer = get_writer(case_path, result_path)
        # 所有用例的数据列表
        self.cases = []
        self.feature = ''
        self.story = ''
        self.web = Web()
        self.getCase()

    def getCase(self):
        # 一个sheet页面一个sheet页面读
        sheetname = self.reader.get_sheets()
        print(sheetname)
        for sheet in sheetname:
            self.feature = sheet
            # 设置当前读取的sheet页面
            self.reader.set_sheet(sheet)
            self.writer.set_sheet(sheet)
            lines = self.reader.readline()

            # 记录一个case
            case = []

            # 处理出来每一个case的数据列表
            for i in range(1, len(lines)):
                line = lines[i]
                # 如果是模块分组
                if len(line[0]) > 1:
                    self.story = line[0]
                # 如果第二列有内容，那么就是case的开始
                elif len(line[1]) > 1:
                    # 如果读到的不是第一个用例组，那么就保存上一个用例到所有用例列表里面
                    if i > 2:
                        self.cases.append(case)
                        # 重置，用来存放下一个用例
                        case = []
                    case.append(line)
                else:
                    case.append(line)

            # 当一个sheet读完，我们需要保存最后一个用例
            self.cases.append(case)

        for i in range(len(self.cases)):
            print(self.cases[i])


conf = None
